package cn.korilweb.demodictionary.service;

import cn.korilweb.demodictionary.entity.TreeNode;
import cn.korilweb.demodictionary.entity.bo.DictInfoBO;
import cn.korilweb.demodictionary.entity.dto.DictDTO;
import cn.korilweb.demodictionary.entity.dto.DictOrderDTO;
import cn.korilweb.demodictionary.entity.dto.DictStatusDTO;
import cn.korilweb.demodictionary.entity.dto.DictTypeDTO;
import cn.korilweb.demodictionary.entity.vo.DictInfoVO;

import java.util.List;

/**
 * @author DJH
 * @date 2021-10-26 21:28:14
 */
public interface DictService {

    /**
     * 获取资源树列表
     * @return
     */
    List<DictInfoVO> getTreeList();

    /**
     * 新增数据字典信息
     * @param dictDTO
     */
    void addDict(DictDTO dictDTO);

    /**
     * 修改数据字典信息
     * @param infoId
     * @param dictDTO
     */
    void modifyDict(Integer infoId, DictDTO dictDTO);

    /**
     * 改变同级节点的顺序
     * @param dictOrderDTO
     */
    void changeOrder(DictOrderDTO dictOrderDTO);

    /**
     * 新增数据字典分类
     * @param dictTypeDTO
     */
    void addType(DictTypeDTO dictTypeDTO);

    /**
     * 启用或禁用字典
     * @param dictStatusDTO
     */
    void changeStatus(DictStatusDTO dictStatusDTO);
}
